#ifndef COMMON_GESTOR_ENVIOS_H
#define COMMON_GESTOR_ENVIOS_H
#include <string>

class Gestor_envios{
public:
	/* Constructor */
	Gestor_envios();
	/* Destructor */
	~Gestor_envios();
	/* Asegura que se realice el envio completo de los datos.
	 * Devuelve -1 si hubo un error o 0 en otro caso. */
	int enviar(int aux_fd, std::string buffer, int tam);
	/* Asegura que se reciban completos los datos.
	 * Devuelve -1 si hubo un error o 0 en otro caso. */
	int recibir(int aux_fd, std::string* buffer, int tam);
	

private:	
	/* Devuelve true si hay un fin de linea en el buffer. False en caso contrario.*/
	bool buscar_fin_de_linea(char* buffer);
	/* Agranda el buffer al doble de su tamaño actual*/
	int agrandar_buffer(char* buffer, int buffer_tam);
};

#endif
